/**
 * @author MagicPig
 * 基于Jquery的图片渐变翻动
 */
function ArtronImgStir(h,w)
{
	this.IsIE=(navigator.appName == "Microsoft Internet Explorer") ? true : false;
	this.BoxObj=null;//容器对象
	this.TitleBox=null;
	_ArtronImgStirMe=this;//上下文
	/**
	 * 格式  Title,Src,Link
	 */
	this.ImageArr=new Array();//图片数组
	this.ImageObjArr=new Array();
	this.ImageHeight=h;//图片高度 
	this.ImageWidth=w;//图片宽度
	//图片的索引
	this.ImageIndex=1;
	this.ImageCloth=null;
	//渐变的步长
	this.StyleStep=5;
	// 变量及变暗的速率
	this.TimeInt=20;
	// 图片信息 ，Page信息的容器
	this.ImageInfo=null;
	//链接跳转的方式
	this.LinkTarget="_blank"
	this.AutoPlay=false;
	this.AutoPlayInt=null;
	this.DoAutoPlay=false;
	//变暗
	this.StyleChangeFunction="_ArtronImgStirMe.IeFunction";
	//变亮
	this.StyleChangeFunction_="_ArtronImgStirMe.IeFunction_"
	this.IsInit=0;
	this.PalyTimer=3000;
	/**
	 * 初始化
	 */
	this.Init=function(DomObj,TitleBoxObj,ImageCloth,ImageInfo)
	{
		this.BoxObj=DomObj;
		this.TitleBox=TitleBoxObj;
		this.ImageCloth= ImageCloth;
		this.ImageInfo=ImageInfo;
		_ArtronImgStirMe.LoadImages();
		_ArtronImgStirMe.InitStyleStep();
		_ArtronImgStirMe.InitStyleChange();
		_ArtronImgStirMe.IsInit=1;
		_ArtronImgStirMe.DispLayImage(_ArtronImgStirMe.ImageIndex);
		
	}
	this.AutoPlay=function(Timer)
	{
		_ArtronImgStirMe.DoAutoPlay=true;
		if (Timer)
		{
			_ArtronImgStirMe.PalyTimer=Timer;
		}
		_ArtronImgStirMe.AutoPlay=true;
		_ArtronImgStirMe.AutoPlayInt= window.setInterval(function()
		{
			_ArtronImgStirMe.NextImage();
		},_ArtronImgStirMe.PalyTimer);
		return;
	}
	this.StopPlay=function()
	{
		if (_ArtronImgStirMe.AutoPlayInt!=null)
		{
			_ArtronImgStirMe.AutoPlay=false;
			window.clearInterval(_ArtronImgStirMe.AutoPlayInt)
		}
		return;
	}
	this.InitStyleStep=function()
	{
		if (_ArtronImgStirMe.IsIE)
		{
			_ArtronImgStirMe.StyleStep=5;
		}
		else
		{
			_ArtronImgStirMe.StyleStep=0.05;
		}
	}
	this.DisplayImageInfo=function()
	{
		var NowPage=_ArtronImgStirMe.ImageIndex;
		var PageNum= _ArtronImgStirMe.ImageArr.length;
		_ArtronImgStirMe.ImageInfo.innerHTML= NowPage+"/"+ PageNum;
	}
	this.InitStyleChange=function()
	{
		if (_ArtronImgStirMe.IsIE)
		{
			this.StyleChangeFunction="_ArtronImgStirMe.IeFunction";
			this.StyleChangeFunction_="_ArtronImgStirMe.IeFunction_";
		}
		else
		{
			this.StyleChangeFunction="_ArtronImgStirMe.OtherFunction";
			this.StyleChangeFunction_="_ArtronImgStirMe.OtherFunction_";
		}
	}
	this.IeFunction=function(CallBack)
	{
		_ArtronImgStirMe.Playing=1;
		var Intv= window.setInterval(function()
		{
			_ArtronImgStirMe.ImageCloth.filters.alpha.opacity=_ArtronImgStirMe.ImageCloth.filters.alpha.opacity+ _ArtronImgStirMe.StyleStep;
			if (_ArtronImgStirMe.ImageCloth.filters.alpha.opacity==100)
			{
				window.clearInterval(Intv);
				CallBack();
			}
		},_ArtronImgStirMe.TimeInt)
	}
	this.IeFunction_=function()
	{
		_ArtronImgStirMe.Playing=1;
		var Intv= window.setInterval(function()
		{
			_ArtronImgStirMe.ImageCloth.filters.alpha.opacity=_ArtronImgStirMe.ImageCloth.filters.alpha.opacity- _ArtronImgStirMe.StyleStep;
			if (_ArtronImgStirMe.ImageCloth.filters.alpha.opacity==0)
			{
				window.clearInterval(Intv);
				_ArtronImgStirMe.IsInit=0;
				_ArtronImgStirMe.Playing=0;
			}
		},_ArtronImgStirMe.TimeInt)
	}

	this.OtherFunction=function(CallBack)
	{
		_ArtronImgStirMe.Playing=1;
		var Intv= window.setInterval(function()
		{
			var Newv= parseFloat(_ArtronImgStirMe.ImageCloth.style.opacity)+ parseFloat(_ArtronImgStirMe.StyleStep); 
			_ArtronImgStirMe.ImageCloth.style.opacity=Newv;
			if (_ArtronImgStirMe.ImageCloth.style.opacity==1)
			{
				window.clearInterval(Intv);
				CallBack();
			}
		},_ArtronImgStirMe.TimeInt)
	}
	this.OtherFunction_=function()
	{
		_ArtronImgStirMe.Playing=1;
		var Intv= window.setInterval(function()
		{
			var Newv= parseFloat(_ArtronImgStirMe.ImageCloth.style.opacity)- parseFloat(_ArtronImgStirMe.StyleStep); 
			_ArtronImgStirMe.ImageCloth.style.opacity=Newv;
			if (_ArtronImgStirMe.ImageCloth.style.opacity==0)
			{
				window.clearInterval(Intv);
				_ArtronImgStirMe.IsInit=0;
				_ArtronImgStirMe.Playing=0;
			}
		},_ArtronImgStirMe.TimeInt)
	}
	this.LoadImages=function()
	{
		if (!_ArtronImgStirMe.ImageArr.length)
		{
			return;
		}
		for (var i=0; i< _ArtronImgStirMe.ImageArr.length; i++)
		{
			_ArtronImgStirMe.ImageObjArr[i]=new Image();
			_ArtronImgStirMe.ImageObjArr[i].src= _ArtronImgStirMe.ImageArr[i].Src;
		}
	}
	/**
	 * 显示图片
	 * @param {Object} 显示的张数
	 */
	this.DispLayImage=function(Index)
	{
		if (!_ArtronImgStirMe.ImageArr.length)
		{
			return;
		}
		var ImageArrI = Index-1;
		if (_ArtronImgStirMe.IsInit==1)
		{
			eval(_ArtronImgStirMe.StyleChangeFunction_+"()");	
		}
		_ArtronImgStirMe.BoxObj.innerHTML='<a href="'+ _ArtronImgStirMe.ImageArr[ImageArrI].Link +'" target="'+ _ArtronImgStirMe.LinkTarget +'"><img id="ArtImageStirImage_'+ImageArrI+'" src="'+ _ArtronImgStirMe.ImageObjArr[ImageArrI].src+'"></a>';
		$("#ArtImageStirImage_"+ImageArrI)[0].onload=function()
		{
			
		}
		if (_ArtronImgStirMe.ImageArr[ImageArrI].Link!=null&&_ArtronImgStirMe.ImageArr[ImageArrI].Link!="")
		{
			_ArtronImgStirMe.ImageCloth.style.cursor="pointer";
			_ArtronImgStirMe.ImageCloth.onclick=function()
			{
				if (_ArtronImgStirMe.LinkTarget=="_blank")
				{
					window.open(_ArtronImgStirMe.ImageArr[ImageArrI].Link);
				}
				else
				{
					window.location=_ArtronImgStirMe.ImageArr[ImageArrI].Link;
				}
			}
		}
		else
		{
			_ArtronImgStirMe.ImageCloth.style.cursor="";
		}
		_ArtronImgStirMe.DisplayImageInfo();
		_ArtronImgStirMe.TitleBox.innerHTML="<a href=\""+ _ArtronImgStirMe.ImageArr[ImageArrI].Link +"\" target=\""+ _ArtronImgStirMe.LinkTarget +"\">"+ _ArtronImgStirMe.ImageArr[ImageArrI].Title+"</a>";
	}
	this.HiddenImageCloth=function(CallBack)
	{
       eval(_ArtronImgStirMe.StyleChangeFunction+"("+CallBack+")");		
	}
	/**
	 * 下一张
	 */
	this.NextImage=function(event)
	{
		var e = e || event;
		if (_ArtronImgStirMe.Playing==1)
		{
			return;
		}
		if (e)
		{
			//_ArtronImgStirMe.StopPlay();
			if (_ArtronImgStirMe.DoAutoPlay)
			{
				// 暂时有问题
				//_ArtronImgStirMe.AutoPlay();
			}
		}
		// 如果是最后一张
		if (_ArtronImgStirMe.ImageIndex== _ArtronImgStirMe.ImageArr.length)
		{
			_ArtronImgStirMe.HiddenImageCloth(function()
			{
			_ArtronImgStirMe.ImageIndex=1;
		    _ArtronImgStirMe.DispLayImage(_ArtronImgStirMe.ImageIndex);
			 eval(_ArtronImgStirMe.StyleChangeFunction_+"()");
			 });
			 return;
		}
		_ArtronImgStirMe.HiddenImageCloth(function()
		{
			_ArtronImgStirMe.ImageIndex= _ArtronImgStirMe.ImageIndex+1;
		    _ArtronImgStirMe.DispLayImage(_ArtronImgStirMe.ImageIndex);
			 eval(_ArtronImgStirMe.StyleChangeFunction_+"()");	
		})
		
	}
	/**
	 * 上一张
	 */
	this.UpImage=function(event)
	{
		if (_ArtronImgStirMe.Playing==1)
		{
			return;
		}
		//如果是第一张
		if (_ArtronImgStirMe.ImageIndex==1)
		{
			_ArtronImgStirMe.HiddenImageCloth(function()
			{
			_ArtronImgStirMe.ImageIndex= _ArtronImgStirMe.ImageArr.length;
			_ArtronImgStirMe.DispLayImage(_ArtronImgStirMe.ImageIndex);
			eval(_ArtronImgStirMe.StyleChangeFunction_+"()");	
			});
			return;
		}
		_ArtronImgStirMe.HiddenImageCloth(function()
		{
			_ArtronImgStirMe.ImageIndex= _ArtronImgStirMe.ImageIndex-1;
			_ArtronImgStirMe.DispLayImage(_ArtronImgStirMe.ImageIndex);
			eval(_ArtronImgStirMe.StyleChangeFunction_+"()");	
		});
	}
	/**
	 * 取得当前的张数
	 */
	this.GetNowIndex=function()
	{
		return _ArtronImgStirMe.ImageIndex;
	}
}
